Lecture 29: Np-hard Problems [fa'12] 29 Np-hard Problems 29.1 'efficient' Problems
نویسندگان
چکیده
A generally-accepted minimum requirement for an algorithm to be considered ‘efficient’ is that its running time is polynomial: O(nc) for some constant c, where n is the size of the input.1 Researchers recognized early on that not all problems can be solved this quickly, but we had a hard time figuring out exactly which ones could and which ones couldn’t. there are several so-called NP-hard problems, which most people believe cannot be solved in polynomial time, even though nobody can prove a super-polynomial lower bound. Circuit satisfiability is a good example of a problem that we don’t know how to solve in polynomial time. In this problem, the input is a boolean circuit: a collection of AND, OR, and NOT gates connected by wires. We will assume that there are no loops in the circuit (so no delay lines or flip-flops). The input to the circuit is a set of m boolean (TRUE/FALSE) values x1, . . . , xm. The output is a single boolean value. Given specific input values, we can calculate the output of the circuit in polynomial (actually, linear) time using depth-first-search, since we can compute the output of a k-input gate in O(k) time.
منابع مشابه
Lecture 29: Np-hard Problems [fa'13] 29 Np-hard Problems 29.1 a Game You Can't Win
A salesman in a red suit who looks suspiciously like Tom Waits presents you with a black steel box with n binary switches on the front and a light bulb on the top. The salesman tells you that the state of the light bulb is controlled by a complex boolean circuit—a collection of AND, OR, and NOT gates connected by wires, with one input wire for each switch and a single output wire for the light ...
متن کامل29 Np-hard Problems 29.1 'efficient' Problems
A generally-accepted minimum requirement for an algorithm to be considered ‘efficient’ is that its running time is polynomial: O(nc) for some constant c, where n is the size of the input.1 Researchers recognized early on that not all problems can be solved this quickly, but we had a hard time figuring out exactly which ones could and which ones couldn’t. there are several so-called NP-hard prob...
متن کاملParallelizing Assignment Problem with DNA Strands
Background:Many problems of combinatorial optimization, which are solvable only in exponential time, are known to be Non-Deterministic Polynomial hard (NP-hard). With the advent of parallel machines, new opportunities have been emerged to develop the effective solutions for NP-hard problems. However, solving these problems in polynomial time needs massive parallel machines and ...
متن کاملTheorem 1
In the last lecture, we studied the KNAPSACK problem. The KNAPSACK problem is an NP-hard problem but does admit a pseudo-polynomial time algorithm and can be solved efficiently if the input size is small. We used this pseudo-polynomial time algorithm to obtain an FPTAS for KNAPSACK. In this lecture, we study another class of problems, known as strongly NP-hard problems. Definition 1 (Strongly N...
متن کاملA Honey Bee Algorithm To Solve Quadratic Assignment Problem
Assigning facilities to locations is one of the important problems, which significantly is influence in transportation cost reduction. In this study, we solve quadratic assignment problem (QAP), using a meta-heuristic algorithm with deterministic tasks and equality in facilities and location number. It should be noted that any facility must be assign to only one location. In this paper, first o...
متن کامل